Mobile and remotely managed devices such as cellular phones, television set-top boxes, home internet gateways and so forth are becoming increasingly prevalent and increasingly complex. As the complexity of such devices increases, so does the necessity to enable service providers to assume much of the burden of being able to remotely manage them. Many management activities that control the operational behavior of a remote device require a complex interaction of policies that derive from one or more sources. Such sources may include the service operator (e.g., cell phone company or cable company), the subscriber (customer of the service operator), enterprises or business customers, and other third parties.
Remote devices may be controlled in a number of different ways. Two fundamental dimensions of control are usage control and the other is operational control. Usage control pertains to control over application and services available to and executed on or accessed by the device. Examples of usage control include a service operator restricting usage of certain applications so that only applications that have been paid for may be used on a given device, a subscribing parent (referred to as a master subscriber) attempting to ensure that their child does not use the music player or game application on their cell phone while at school, or an enterprise dictating that their employees' cell phones vibrate, rather than ring, when they are in executive meeting rooms, and other similar application controls. Operational control pertains to the operation of the device itself, and the various hardware elements of the device, such as power, input/output, and transceiver circuits. Examples of operational control include limiting device power consumption if the battery is running low, increasing radio sensitivity if interference is detected, increasing speaker volume in noisy environments, and other similar operational characteristics.
At present, mobile devices are controlled almost exclusively by the user. The user must manually set or modify operational settings, such as ring mode, speaker volume, keypad configuration, and so on. With regard to usage control, service providers are generally able to enable or disable certain functions on a remote device, but control is generally limited to simple on/off settings. Present devices do not support usage control based on dynamic or operational characteristics of the device. Consequently, such control requires user configuration. Thus, in order to enforce usage policies or rules, or set certain operational characteristics, a relatively high level of user input is required. As such, present mobile devices are passive devices that are not capable of significant autonomic operation, but instead require active monitoring and configuration by service providers and users.
Some systems have been developed with some form of remote policy management for networked devices. One such system manages network elements using a proxy that detects events of interest. Such systems typically work only on network elements and not remote devices or terminals and require a central policy processing point to handle detected events.
In certain cases, standard management protocols may be used by a server to retrieve, analyze and set management properties values for a mobile client. The management property values can be stored within known structure, such as a device management tree. Though such server-driven management presents a mandatory channel, it implies that the server is the component primarily responsible for taking management decisions for the mobile client. Such existing management paradigms can thus be viewed as reactive rather than proactive because management and monitoring is conducted after a problem is reported by a consumer.
What is needed, therefore, is a mobile device policy enforcement system that allows for true autonomous operation of mobile devices.
What is further needed is a mobile device management framework that facilitates proactive management of mobile devices based on operational and use conditions sensed on the mobile device.